iT邦幫忙

2023 iThome 鐵人賽

DAY 27
1
自我挑戰組

服用Python30天系列 第 27

[DAY27]服用Python-機器學習天氣預報

  • 分享至 

  • xImage
  •  

前言

今天就來學天氣預報機器學習吧~


import numpy as np
from sklearn.linear_model import LinearRegression
import matplotlib.pyplot as plt

# 假設這是一些歷史天氣數據,例如溫度(攝氏度)和降雨量(毫米)
temperature = np.array([25, 26, 24, 30, 31, 31, 28, 27, 29, 27, 25, 30])
rainfall = np.array([5, 6, 3, 0, 0, 0, 1, 2, 4, 5, 6, 8])

# 創建一個特徵矩陣,包括溫度和降雨量
X = np.column_stack((temperature, rainfall))

# 創建目標值,例如明天的溫度
y = np.array([27, 25, 28, 30, 32, 33, 30, 29, 27, 28, 24, 26])

# 創建一個線性回歸模型
model = LinearRegression()

# 使用歷史數據訓練模型
model.fit(X, y)

# 預測明天的溫度和降雨量
tomorrow_temperature = 28
tomorrow_rainfall = 2
prediction = model.predict([[tomorrow_temperature, tomorrow_rainfall]])

print(f"明天的溫度預測為 {prediction[0]:.2f} 攝氏度")

# 可視化歷史數據和預測,更改顏色
plt.scatter(temperature, y, color='skyblue', label='data history')
plt.scatter([tomorrow_temperature], [prediction[0]], color='pink', marker='x', label='data forecast')
plt.xlabel('temperature(Celsius)')
plt.ylabel('temperature of tomorrow (Celsius)')
plt.legend()

# 顯示標題
plt.title('weather forecast')
plt.show()

https://ithelp.ithome.com.tw/upload/images/20231012/201631226rRYwAITUX.jpg


今天就先到這邊吧~
目前進度:27/30···


上一篇
[DAY26]服用Python-機器學習
下一篇
[DAY28]服用Python-機器學習-卷積神經網絡
系列文
服用Python30天30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言